package Classes;

import java.io.Serializable;


/**
 * Classe para representar uma indicacao de um usuario a outro.
 * 
 * @author Andreza Raquel
 *
 */
public class Indicacao implements Serializable {

    private final Usuario REMETENTE;
    private final Item ITEM;
    private final String MENSAGEM;

    /**
     * Construtor de uma indicacao
     * @param remetente
     *      O usuario que ira receber a indicacao.
     * @param item
     *      O item indicado.
     * @param mensagem
     *      Uma mensagem para explicar a indicacao.
     */
    public Indicacao(Usuario remetente, Item item, String mensagem) {
        this.REMETENTE = remetente;
        this.ITEM = item;
        this.MENSAGEM = mensagem;
    }

    /**
     * Metodo accessor do remetente da indicacao.
     * @return O remetente da indicacao.
     */
    public Usuario getREMETENTE() {
        return REMETENTE;
    }

    /**
     * Metodo accessor do item da indicacao.
     * @return O item da indicacao.
     */
    public Item getITEM() {
        return ITEM;
    }

    /**
     * Metodo accessor da mensagem.
     * @return A mensagem do remetente.
     */
    public String getMENSAGEM() {
        return MENSAGEM;
    }

    @Override
    public String toString() {		
        return REMETENTE + " indicou " + ITEM + " a voce. " + "/n" + MENSAGEM ;
    }	
    
}
